Systems and methods of analyte measurement analysis

ABSTRACT

Disclosed are systems for non-invasively determining a measurement of an analyte. The systems include an electrocardiogram sensor and a processing device operatively coupled to the electrocardiogram sensor. The processing device can execute instructions to receive electrocardiogram data from the electrocardiogram sensor and apply a machine learning model, wherein the machine learning model has been trained based on previous electrocardiogram data associated with a subject and source of an analyte measurement associated with the subject. The system may also determine an indication of a level of the analyte based on the electrocardiogram data.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.62/434,339 filed on Dec. 14, 2016 and U.S. Provisional Application No.62/457,713 file on Feb. 10, 2017, the entire contents of each are herebyincorporated by reference.

BACKGROUND

Electrolytes are tightly regulated within the healthy mammalian body.For example, potassium, magnesium and calcium are essential electrolytesused by the body in numerous physiological processes, where a relativelysmall deviation in electrolyte concentration outside of a normal rangemay lead to serious complications within an individual. For exampledeviation of potassium concentration, hypokalemia and hyperkalemia, isassociated with cardiac arrest.

Electrolytes within the mammalian body may be monitored invasivelythrough, for example, drawing a blood sample from an individual andanalyzing the blood sample for the electrolyte level within the sample.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example system to provide analyte measurement asdiscussed herein, according to aspects of the disclosure.

FIG. 2 illustrates example data generated by analyte measurement systemsas discussed herein, according to aspects of the disclosure.

FIG. 3 illustrates an example user interface as generated by an analytemeasurement system as discussed herein, according to aspects of thedisclosure.

FIG. 4 illustrates flow diagram of processes as performed by an analytemeasurement system, according to aspects of the disclosure.

FIG. 5 illustrates flow diagram of processes as performed by an analytemeasurement system, according to aspects of the disclosure.

FIG. 6 illustrates an example computing environment of an analytemeasurement system, according to aspects of the disclosure.

FIG. 7 illustrates example electrocardiogram signals, according toaspects of the disclosure.

DETAILED DESCRIPTION

Described herein are non-invasive devices and techniques for monitoringa level of a substance within the body of an individual. Thenon-invasive technique described herein includes sensing a biosignalsuch as an electrocardiogram of an individual and analyzing thebiosignal to determine a level of a substance within the body of theindividual based on the analysis of the biosignal.

In some embodiments, a substance that is non-invasively determinedcomprises an electrolyte such as, for example, potassium, magnesium, orcalcium, other substances within a body may also be determined fromanalysis of an electrocardiogram. For example, a level of glucose withinthe body of an individual, a level of a pharmaceutical or pharmaceuticalbyproduct within the body of an individual, a level of alcohol or otherdrugs, or other substances may be determined from analysis of anelectrocardiogram or other biological signals.

An electrocardiogram may be described with a number of features. Some ofthe common features viewed during analysis of an electrocardiograminclude a P wave, a QRS wave, and a T wave. Other features may also beviewed in different electrocardiograms of different individuals. Thelevel of certain analytes within the blood of an individual (e.g. aserum potassium level) may have an effect on that individual'selectrocardiogram. For example, certain analytes may change a slope,amplitude, duration, smoothness, or other characteristics of a featureof an electrocardiogram signal.

These effects on the morphology of an electrocardiogram are sometimessubtle and not directly obvious to the human eye. In addition, changesto an electrocardiogram may not correspond to changes in an obviouscomponent of the electrocardiogram waveform (e.g. a QRS complex), butmay instead correspond to one or more correlations between one or moresmall and/or apparently unrelated features of the electrocardiogram.Accordingly, applying techniques to individual waveforms may provideadditional insight into an electrocardiogram that isn't immediatelyobvious by simply looking at it.

Furthermore, individuals may have different electrocardiogram features.For example, certain persons may have a T wave that is inverted comparedto other persons, different average amplitudes of features, slopes offeatures, or other changes that vary across populations. The correlationbetween certain features or combinations of features with analyte levelsmay vary across individuals. Accordingly, simple mathematical modelsthat are built to estimate blood analytes across a population may not beaccurate enough for clinical or other use.

In order to provide improved accuracy into concentrations in anindividual's blood, in some embodiments, a machine learning model may beapplied to electrocardiogram readings from an individual. In someembodiments, a machine learning model may be trained on an individual'selectrocardiogram data at times when a target analyte level is known oris easily predictable. For example, an analyte level may be measured bydrawing blood, or other techniques, at different times. The analytelevel across a continuous time spectrum may then be determined betweenthe different times due to one or more predictable mathematical models.For example, an exponential decay of an analyte level between certaintime periods may be used to estimate analyte levels. In othersituations, a linear regression (or other regression model), orextrapolation techniques, may be used to estimate analyte levels withina time interval.

In other situations, a model can be used to predict the analyte level inresponse to a known stimulus. For instance, a pharmacokinetic model canbe used to estimate analyte levels of a pharmaceutical in the timefollowing ingestion of a known quantity of pharmaceutical in controlledconditions. Such model could incorporate multiple parameters: e.g. bodyweight, blood measurements, urine measurements, metabolic rate, etc.

The known analyte levels, whether from continuous direct measurement orderived from measurements at several points, may be combined withcontinuous measurement of an individual's electrocardiogram to train amachine learning algorithm. For example, measurement of the individual'selectrocardiogram may be used as an input to a machine learning systemwith the analyte levels measured for the individual as labeled outputdata. Based on the output data, the machine learning model may beupdated to improve output characteristics.

In some embodiments, the individual's electrocardiogram may be read byan electrocardiogram sensor as a number of samples. For example, theelectrocardiogram may represent data read in over a period of time. Insome embodiments, the electrocardiogram may operate at approximately 300hertz, 60 hertz, 1000 hertz, or at another frequency of sampling toprovide accurate data for the electrocardiogram. The electrocardiogramdata may be read into the machine learning model in intervals of time.For example, the electrocardiogram data may be used as a 10 second inputof data. In some embodiments, rather than a continuous string of data,an average heartbeat may be determined by detecting each heartbeatpresent in the electrocardiogram signal, aligning each heartbeat basedon a common feature such as the R-wave, and averaging each beat toproduce an average amplitude at different parts of the beat. This mayreduce noise or signal artifact present in the electrocardiogramrecording.

While training the machine learning model can be performed with a numberof techniques, as further discussed below, generally theelectrocardiogram data will be input with labeled analyte levels.Depending on the type of machine learning model, the electrocardiogramdata may then be processed by a set of mathematical operations (e.g.addition, multiplication, convolution) involving weight matrices in anumber of levels of the machine learning model. After processing, themachine learning model may then generate an output. Based on the outputcompared to the label for the data, the machine learning model may beupdated. For example, weight matrices may be updated using backpropagation to better approximate the labeled data during a nextprocessing stage.

The process of training the machine learning model may be repeated witheach segment of the electrocardiogram data at different time using thelabeled analyte data. The process may be repeated through all theelectrocardiogram data multiple times until the outputs of the machinelearning model are within a threshold of accuracy. For example, thethreshold may be set to be within a set amount of the measured values ateach point in time. The threshold may also be set such that it is withina threshold of a measured value at least at a threshold amount of time.

While various machine learning models may be used, in some embodiments,a convolutional neural net, a recurrent neural net, or a combination ofa convolutional neural net and a recurrent neural net may be used. Forexample, a machine learning model may include 4 convolutional layer and2 fully connected layers. In some embodiments, fewer or additionallayers of different types may also be used. Furthermore, in someembodiments, drop out matrices, skip connection, max pooling, or othertechniques may be used.

After training, the machine learning model may be applied to variouselectrocardiogram data for a user. For example, after training over aperiod of time without known blood analyte levels, which may beinvasively captured, a user may use a simple electrocardiogram readingto determine a concentration level of the particular analyte in theindividual's blood. In some embodiments, the electrocardiogram may beapplied as an input to the machine learning model in the same or similarmanner as during training. For example, if ten second intervals ofelectrocardiogram data were used to train a machine learning system, thesame type of electrocardiogram data may be used when applying themachine learning model to determine an analyte level for an individual.Similarly, if an average heartbeat was used over an interval, the sameaverage heartbeat pre-processing may be applied when applying themachine learning model.

In some embodiments, training of a machine learning model may beperformed at a computer or server capable of large amounts of dataprocessing. For example, a computing or server system may be used formultiple individuals to train multiple machine learning models for eachindividual. However, in some embodiments, training of a machine learningmodel may be performed on an individual's personal computer, mobiledevice, smart watch or the like. In some embodiments after training, amachine learning model may be applied by a different computer systemthan used by training. For example, a computing system or server systemmay be used to train a machine learning model for an individual,however, after training, the machine learning model may be applied onthe individual's personal computer, mobile device, smart watch, or thelike. Of course, in some implementations, different servers, computersystems, personal computers, mobile devices, or the like may be used toperform any tasks as described herein.

For reference, FIG. 7 shows a general electrocardiogram having standardfeatures. For example, the electrocardiogram shows two measured beats.Each beat has a P-wave, a QRS complex, and a T-wave. Each segment hasdifferent amplitudes and slopes at various points. As shown, the R-Rinterval shows the length between peaks of the beats. Theelectrocardiogram also shows other intervals including a P-R interval, asystole period, a diastole period and a QT interval. Although theelements of these features may be built in to the machine learningmodel, they are not necessarily individually analyzed by the model. Forexample, the machine learning model may learn features of relationsbetween features during training that are different than those shown.Furthermore, as discussed above, certain individual's may have differentfeatures than shown in a typical electrocardiogram. For example, someindividuals may not have a T-wave, may have a bi-phasic T-wave, aninverted T-wave or other features. Accordingly, although described aslearning features indicating an analyte level for an individual, suchlearning should not be attributed to any specific features of anindividual's electrocardiogram.

FIG. 1 illustrates an example analyte measurement system 100 thatsupports the analysis of electrocardiograms or other biosignals asdescribed herein. The analyte measurement system 100 may include ananalyte analysis system 110 and a machine learning training system 150.Although shown as separate components, in some embodiments, the analyteanalysis system 100 and the machine learning training system 150 may bepart of the same computer system. In some embodiments, the analyteanalysis system 110 and the machine learning training system 150 may beremote components connected over a network. For example, the analyteanalysis system 110 may be located on a personal device such as a mobiledevice, personal computer, smart watch, or the like. The machinelearning training system may be located on the same device as theanalyte analysis system 110 or on a remote device such as a centralserver.

In some embodiments, there may be fewer or additional components thanshown in FIG. 1. For example, in some embodiments there may beadditional analyte analysis systems 110 that are associated withdifferent individuals. Furthermore, while an electrocardiogram sensor115 is shown as part of analyte analysis system 100, in someembodiments, there may be different electrocardiogram sensors (notshown) that are used in different parts of training and applicationstages of a machine learning model.

The machine learning training system 150 may include a model trainingservice 160 an electrocardiogram data store 155 and a machine learningmodel 125. The electrocardiogram data store 155 may includeelectrocardiogram data associated with an individual that was taken overa period of time. In some embodiments, the electrocardiogram data 155may include additional data associated with additional individuals. Forexample, the machine learning training service 150 may train additionalmachine learning models associated with additional individuals.

In some embodiments, the electrocardiogram data store 155 may furtherinclude labeled data indicating analyte levels for a target analyte atdifferent times during which the electrocardiogram data was taken.Accordingly, the electrocardiogram data store 155 may include data totrain a machine learning model 125. The electrocardiogram data store 155may include electrocardiogram data over a period of time includingminutes, hours, or longer. In some embodiments, the electrocardiogramdata store 155 may include data associated with a set procedure oractivity. For example, the electrocardiogram data store 155 may includedata that is associated with dialysis, surgery, exercise, eating, or thelike. Accordingly, analyte levels may be expected to change at apredictable rate during such processes and a model for the change duringthis process can provide accurate labels for different samples of theelectrocardiogram data.

In some embodiments, the electrocardiogram data 155 may includeelectrocardiogram data for an individual associated with the analyteanalysis system 110. For example, the electrocardiogram data 155 mayreceive data from analyte analysis system 110 that was generated byelectrocardiogram sensor 115. In some embodiments, the electrocardiogram155 may be generated by a different electrocardiogram sensor (notshown).

In some embodiments, multiple electrocardiogram waveforms are averagedto form a single averaged waveform that serves as the input for themodel training service 160. For example, the electrocardiogram data 155may be pre-processed to form a set of inputs with labeled data for themodel training service. Each of the inputs may be an averaged waveformof heartbeats located within a set interval of electrocardiogram data.In some embodiments, the electrocardiogram data may be stored over acomplete waveform interval. However, in some embodiments, additionalpre-processing may be performed such as smoothing, noise reduction, orother processing. It should be understood, however, that any recordinglength as well as any other lead or combination of leads selected fromleads I, II, III, aVR, aVL, aVF, V1, V2, V3, V4, V5, and V6 are suitablefor use as inputs to machine learning model 125.

The machine learning model 125 may start as a generic machine learningmodel. For example, a machine learning model set to a general populationmay be used as a starting model for training a machine learning modelfor an individual. In some embodiments, the machine learning model 125may start with randomized values for a number of matrices within themodel. The machine learning model 125 may be set with a number ofconvolutional layers, recurrent layers, or the like prior to training bythe model training service 160.

In some embodiments, the machine learning model 125 may be a recurrentneural network. A recurrent neural network may receive sequential dataas an input, such as consecutive electrocardiogram samples or beats, andthen the recurrent neural network updates its internal state at everytime step. In some embodiments the machine learning model may be aconvolutional neural network. A convolutional neural network may includea number of convolutional layers that apply convolution operations usingweight matrices and non-linearities to identify one or more features inthe input data. The output of each convolutional layer may then bepassed up to another layer to provide further analysis. In someembodiments, the machine learning model 125 may have a combination ofrecurrent and convolutional layers that identify and quantify differentfeatures in input data.

The model training service 160 may train a model for an individualhaving data in the electrocardiogram data store 155. In someembodiments, the model training service 160 uses automatic statisticalanalysis of labeled data in order to determine which features to extractand/or analyze from a sensed biosignal (e.g. an electrocardiogram). Themodel training service 160 may determine which features to extractand/or analyze from an electrocardiogram based on labeledelectrocardiogram data 155 that it receives.

In some embodiments, the model training service 160 may be configured toreceive a certain length of raw electrocardiogram data as an input andto determine an analyte level. For example, an input to the modeltraining service 160 may be 10 seconds or more of an electrocardiogramsignal from lead I of an electrocardiogram sensor 115. In someembodiments the model training service 160 may use the untrained machinelearning model 125 as a function approximator, mapping a highdimensional input (the raw electrocardiogram waveform) into a realnumber (e.g. a blood potassium value or other analyte). Based ondifferences between the number generated by the machine learning model125, the model training service 160 may update the machine learningmodel to better fit the labeled data.

The analyte analysis system 110 in FIG. 1 may provide data from anelectrocardiogram sensor 115 to store as electrocardiogram data 120. Theelectrocardiogram data 120 may then be applied to machine learning model125 by an electrocardiogram analyzer 130. The machine learning model 125may be the same as was trained by machine learning system 150. In someembodiments, the machine learning model 125, the electrocardiogramanalyzer 130, or other components of the analyte analysis system 110 maybe on a separate computing system than the analyte analysis system 110.For example, the machine learning training system 150 may have one ormore components of the analyte analysis system 110.

The electrocardiogram analyzer 130 may apply the machine learning model125 by providing inputs from the electrocardiogram model 120. Asdiscussed herein, the electrocardiogram data may be pre-processed intoset interval segments, average heartbeats, smoothed, noise reduced, orotherwise provided in a set manner to the electrocardiogram analyzer.The electrocardiogram analyzer 130 may then provide the machine learningmodel 125 to the electrocardiogram data 120 to generate an output of ananalyte concentration.

In some embodiments, a user interface generator 135 may provide theanalyzed data to a user interface. For example, the user interfacegenerator 135 may generate a user interface including one or more of ananalyte output, an electrocardiogram output, additional analyte data, ora combination. For example, in some embodiments, a user interfacegenerator 135 may provide a user interface as described with referenceto FIG. 3.

While shown as including a machine learning model 125 for particularanalyte analysis, in some embodiments, the analyte analysis system 110may provide additional data for additional analyte concentration. Forexample, machine learning training system 150 may provide multiplemachine learning models 125 for different analytes based on anindividual's electrocardiogram data.

In addition, an analyte analysis system 110 may include an alert service140. The alert service 140 may generate an alert to an individual if ananalyte is above or below a certain threshold. For example, for apotassium serum level, the individual may be alerted if the level isabove 5. Furthermore, the alert service 140 may provide additionalalerts to other individuals. For example, an alert may be provided to adoctor, a caretaker, a significant other, or the like.

FIG. 2 shows an example output of an analyte measurement system asapplied to electrocardiogram data for an individual. For example, theanalyte measurement system used to generate the data in FIG. 2 may bethe same or similar as the analyte measurement system 100 described withreference to FIG. 1.

The chart 200 shows the potassium value calculated via interpolationfrom blood tests, compared to the potassium value determined by themachine learning model. The first (leftmost) dialysis session 210 wasused to generate training data for the machine learning model. Thesecond dialysis session 220 and third dialysis sessions 230 showevaluation of the model generalized to data that it had not trained on.As shown in FIG. 2, the electrocardiogram data analyzed by the machinelearning model in the second dialysis session 220 and the third dialysissession 230 represent accurately the potassium level of the individual'sblood throughout the dialysis process. The machine learning model couldfurther be used to provide analysis of the individual's potassium levelsat points between dialysis sessions. Accordingly, the potassium levelmay be monitored for periods of high levels to reduce the risk to theindividual between sessions.

FIG. 3 depicts an example user interface 300 showing an analyte analysisas described herein. For example, in some embodiments the user interface300 may be generated by user interface generator 135 as described inFIG. 1. The user interface 300, or variants thereof, may be displayed ona mobile device, a personal computer, a web browser, a smart watch, orother computing devices.

The user interface 300 includes an interface 310 prompting a user toperform a standard electrocardiogram. The user may have an option 320 torecord the electrocardiogram with an electrocardiogram sensor is inplace. The electrocardiogram 330 may be displayed as it is recorded bythe individual. Furthermore, an output 340 of an analyte level of theindividual may be provided. In some implementations, theelectrocardiogram sensor may pass data to an electrocardiogram analyzerto apply a machine learning model as described above with respect toFIG. 1. In some embodiments, the electrocardiogram sensor may pass dataalong to a number of machine learning models to test additional analytelevels.

Based on the analyte levels, a user interface generator may generate anadditional user interface element 340 that provide the analyte level. Insome embodiments, a user interface generator may provide the analytelevels regardless of their range. An alert service may use the dataprovided by the machine learning model to determine whether to alert theindividual to additional issues with potential analyte levels. Forexample, as shown in user interface element 340, in some embodiments, auser interface may provide an alert and a recommendation to contact adoctor or physician. In some embodiments, an alert service may request aretest of an electrocardiogram prior to providing an alert to contact adoctor or physician.

FIG. 4 depicts a data flow 400 illustrating the application of a machinelearning model to an electrocardiogram of a subject. In someembodiments, the processes described with respect to FIG. 4 may beperformed by one or more components of the analyte measurement system100 as described with reference to FIG. 1.

Beginning in block 410, an analyte measurement system may receiveelectrocardiogram data from the electrocardiogram sensor. For example,the electrocardiogram sensor may provide real-time data of anindividual's heartbeats. In some embodiments, the electrocardiogramsensor may be a 1 lead sensor, a 2 lead sensor, a 3 lead sensor, a 4lead sensor, a 6 lead sensor, or a 12 lead sensor. In some embodiments,the analyte measurement sensor may utilize only a subset of theelectrocardiogram data that is received.

In block 420, the analyte measurement system may apply a machinelearning model to the electrocardiogram of the individual. In someembodiments, the machine learning model has been trained based onprevious electrocardiogram data associated with the subject and sourceof an analyte measurement associated with the subject as describedabove. For example, the machine learning model may be specific to theindividual based on prior measurements.

In block 430, the analyte measurement system may determine an indicationof a level of the analyte based on the electrocardiogram data. Forexample, the analyte measurement system may determine whether theindividual's analyte levels for a target analyte are higher or lowerthan expected or healthy. Furthermore, the analyte measurement systemmay determine a specific estimated level of the individual's analytelevels, in some embodiments.

FIG. 5 depicts a data flow 500 illustrating the application of a machinelearning model to an electrocardiogram of a subject. In someembodiments, the processes described with respect to FIG. 5 may beperformed by one or more components of the analyte measurement system100 as described with reference to FIG. 1.

Beginning in block 510, an analyte measurement system may receive afirst measurement of a target analyte within a subject at a first time.For example, a subject or individual may have a blood test run todetermine a level of an analyte prior to performing a process orprocedure.

In block 520, the analyte measurement system may receive a secondmeasurement of the analyte within the subject at a second time. Forexample, a subject or individual may have a blood test run to determinea level of an analyte after performing a process or procedure. Althoughdescribed as two measurements, in various embodiments, fewer oradditional measurements may be used to determine analyte levels withadditional accuracy.

In block 530, the analyte measurement system generates a set ofestimated values of the analyte at different times between the firsttime and the second time. For example, a known model may be used todetermine approximate analyte levels between a first time and a secondtime if both measurements at both times are known. In some embodiments,as discussed herein, additional measurements may be used to provideadditional accuracy. Furthermore, in some embodiments, a singlemeasurement could be taken, and an action performed in controlledcircumstances, that causes an analyte level to vary in a predictablemanner. For example, a measurement could be taken at the beginning of adialysis session and additional values may be generated from the singlemeasurement based on the individual's size, the equipment used, or otherfactors. In another embodiment, a specific drug may be administered thatis known to accumulate in the bloodstream in a predictable manner overtime. Similarly, ingestion of food may be used where the absorption ofsugar, fats, proteins, vitamins, minerals, or the release of insulin orother enzymes or metabolites may be predictable in the blood stream.

In block 540, the analyte measurement system may input an interval ofelectrocardiogram data received from an electrocardiogram sensor into amachine learning training system. For example, the interval ofelectrocardiogram data may be taken at a third time between the firsttime and the second time.

In block 550, the analyte measurement system may input use an analytelevel generated from the measured value (or values) of the analyte as alabel input into an untrained machine learning training system. This mayprovide the training system with data to determine the accuracy of themachine learning model.

In block 560, the analyte measurement system may update the untrainedmachine learning model based on comparing an output of the machinelearning training system based on the interval of electrocardiogram dataand the estimated value of the set of estimated values at the thirdtime. For example, the analyte measurement system may update weightmatrices applied by a convolutional or recurrent machine learningmodels.

FIG. 6 illustrates a diagrammatic representation of a machine in theexample form of a computer system 600 within which a set ofinstructions, for causing the machine to perform any one or more of themethodologies discussed herein, may be executed. In alternativeembodiments, the machine may be connected (e.g., networked) to othermachines in a local area network (LAN), an intranet, an extranet, or theInternet. The machine may operate in the capacity of a server or aclient machine in a client-server network environment, or as a peermachine in a peer-to-peer (or distributed) network environment. Themachine may be a personal computer (PC), a tablet PC, a set-top box(STB), a Personal Digital Assistant (PDA), a cellular telephone, a webappliance, a server, a network router, a switch or bridge, a hub, anaccess point, a network access control device, or any machine capable ofexecuting a set of instructions (sequential or otherwise) that specifyactions to be taken by that machine. Further, while only a singlemachine is illustrated, the term “machine” shall also be taken toinclude any collection of machines that individually or jointly executea set (or multiple sets) of instructions to perform any one or more ofthe methodologies discussed herein. In one embodiment, computer system600 may be representative of a server, such as one or more components ofanalyte measurement system 100 configured to perform processes asdescribed above.

The exemplary computer system 600 includes a processing device 602, amain memory 604 (e.g., read-only memory (ROM), flash memory, dynamicrandom access memory (DRAM), a static memory 606 (e.g., flash memory,static random access memory (SRAM), etc.), and a data storage device618, which communicate with each other via a bus 630. Any of the signalsprovided over various buses described herein may be time multiplexedwith other signals and provided over one or more common buses.Additionally, the interconnection between circuit components or blocksmay be shown as buses or as single signal lines. Each of the buses mayalternatively be one or more single signal lines and each of the singlesignal lines may alternatively be buses.

Processing device 602 represents one or more general-purpose processingdevices such as a microprocessor, central processing unit, or the like.More particularly, the processing device may be complex instruction setcomputing (CISC) microprocessor, reduced instruction set computer (RISC)microprocessor, very long instruction word (VLIW) microprocessor, orprocessor implementing other instruction sets, or processorsimplementing a combination of instruction sets. Processing device 602may also be one or more special-purpose processing devices such as anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA), a digital signal processor (DSP), network processor,or the like. The processing device 602 is configured to executeprocessing logic 626, which may be one example of system 400 shown inFIG. 4, for performing the operations and steps discussed herein.

The data storage device 618 may include a machine-readable storagemedium 628, on which is stored one or more set of instructions 622(e.g., software) embodying any one or more of the methodologies offunctions described herein, including instructions to cause theprocessing device 602 to execute analyte measurement systems 100. Theinstructions 622 may also reside, completely or at least partially,within the main memory 604 or within the processing device 602 duringexecution thereof by the computer system 600; the main memory 604 andthe processing device 602 also constituting machine-readable storagemedia. The instructions 622 may further be transmitted or received overa network 620 via the network interface device 608.

The machine-readable storage medium 628 may also be used to storeinstructions to perform a method for analyte measurement systems, asdescribed herein. While the machine-readable storage medium 628 is shownin an exemplary embodiment to be a single medium, the term“machine-readable storage medium” should be taken to include a singlemedium or multiple media (e.g., a centralized or distributed database,or associated caches and servers) that store the one or more sets ofinstructions. A machine-readable medium includes any mechanism forstoring information in a form (e.g., software, processing application)readable by a machine (e.g., a computer). The machine-readable mediummay include, but is not limited to, magnetic storage medium (e.g.,floppy diskette); optical storage medium (e.g., CD-ROM); magneto-opticalstorage medium; read-only memory (ROM); random-access memory (RAM);erasable programmable memory (e.g., EPROM and EEPROM); flash memory; oranother type of medium suitable for storing electronic instructions.

The preceding description sets forth numerous specific details such asexamples of specific systems, components, methods, and so forth, inorder to provide a good understanding of several embodiments of thepresent disclosure. It will be apparent to one skilled in the art,however, that at least some embodiments of the present disclosure may bepracticed without these specific details. In other instances, well-knowncomponents or methods are not described in detail or are presented insimple block diagram format in order to avoid unnecessarily obscuringthe present disclosure. Thus, the specific details set forth are merelyexemplary. Particular embodiments may vary from these exemplary detailsand still be contemplated to be within the scope of the presentdisclosure.

Additionally, some embodiments may be practiced in distributed computingenvironments where the machine-readable medium is stored on and orexecuted by more than one computer system. In addition, the informationtransferred between computer systems may either be pulled or pushedacross the communication medium connecting the computer systems.

Embodiments of the claimed subject matter include, but are not limitedto, various operations described herein. These operations may beperformed by hardware components, software, firmware, or a combinationthereof.

Although the operations of the methods herein are shown and described ina particular order, the order of the operations of each method may bealtered so that certain operations may be performed in an inverse orderor so that certain operation may be performed, at least in part,concurrently with other operations. In another embodiment, instructionsor sub-operations of distinct operations may be in an intermittent oralternating manner.

The above description of illustrated implementations of the invention,including what is described in the Abstract, is not intended to beexhaustive or to limit the invention to the precise forms disclosed.While specific implementations of, and examples for, the invention aredescribed herein for illustrative purposes, various equivalentmodifications are possible within the scope of the invention, as thoseskilled in the relevant art will recognize. The words “example” or“exemplary” are used herein to mean serving as an example, instance, orillustration. Any aspect or design described herein as “example” or“exemplary” is not necessarily to be construed as preferred oradvantageous over other aspects or designs. Rather, use of the words“example” or “exemplary” is intended to present concepts in a concretefashion. As used in this application, the term “or” is intended to meanan inclusive “or” rather than an exclusive “or”. That is, unlessspecified otherwise, or clear from context, “X includes A or B” isintended to mean any of the natural inclusive permutations. That is, ifX includes A; X includes B; or X includes both A and B, then “X includesA or B” is satisfied under any of the foregoing instances. In addition,the articles “a” and “an” as used in this application and the appendedclaims should generally be construed to mean “one or more” unlessspecified otherwise or clear from context to be directed to a singularform. Moreover, use of the term “an embodiment” or “one embodiment” or“an implementation” or “one implementation” throughout is not intendedto mean the same embodiment or implementation unless described as such.Furthermore, the terms “first,” “second,” “third,” “fourth,” etc. asused herein are meant as labels to distinguish among different elementsand may not necessarily have an ordinal meaning according to theirnumerical designation.

It will be appreciated that variants of the above-disclosed and otherfeatures and functions, or alternatives thereof, may be combined intomay other different systems or applications. Various presentlyunforeseen or unanticipated alternatives, modifications, variations, orimprovements therein may be subsequently made by those skilled in theart which are also intended to be encompassed by the following claims.The claims may encompass embodiments in hardware, software, or acombination thereof.

What is claimed is:
 1. A system for non-invasively determining ameasurement of an analyte comprising: an electrocardiogram sensor; and aprocessing device operatively coupled to the electrocardiogram sensor,wherein when executing instructions, the processing device is to:receive electrocardiogram data from the electrocardiogram sensor; applya machine learning model to the electrocardiogram data, wherein themachine learning model has been trained based on previouselectrocardiogram data associated with a user and source of an estimatedanalyte value associated with the user, wherein to train the machinelearning model, a second processing device is to: receive a firstmeasurement of the analyte within the user at a first time; receive asecond measurement of the analyte within the user at a second time;generate a set of estimated values of the analyte at different timesbetween the first time and the second time; and use one or more of theset of estimated values to train the machine learning model; anddetermine an indication of a level of the analyte based on theelectrocardiogram data.
 2. The system of claim 1, wherein theelectrocardiogram data comprises an electrocardiogram signal measuredover multiple heartbeats of the user.
 3. The system of claim 2, whereinapplying the machine learning model comprises pre-processing theelectrocardiogram signal to generate an average heartbeat over themultiple heartbeats of the user.
 4. The system of claim 1, wherein theelectrocardiogram sensor comprises a 2 lead or 3 lead electrocardiogramsensor.
 5. The system of claim 1, wherein the machine learning model isone of a convolutional neural network, a recurrent neural network, or acombination of a convolutional and neural network.
 6. The system ofclaim 1, wherein the analyte is one of potassium, magnesium, or calcium.7. The system of claim 1, wherein the indication of the level of theanalyte indicates one of an estimate of concentrations of the analyte inthe user or an indication of a classification of the analyte level ashigh or low.
 8. The system claim 1, wherein the processing device ispart of a mobile device comprising a display screen, and wherein theprocessing device is further to cause the display screen to display theindication of the level of the analyte on the display screen.
 9. Thesystem of claim 1, wherein to use one or more of the set of estimatedvalues to train the machine learning model, the second processing deviceis to: input an interval of electrocardiogram data received from theelectrocardiogram sensor into a machine learning training system,wherein the interval of electrocardiogram data was taken at a third timebetween the first time and the second time; input one or more of theestimated analyte values of the set of estimated values at the thirdtime into an untrained machine learning model; and update the untrainedmachine learning model based on comparing an output of the machinelearning training system based on the interval of electrocardiogram dataand the one or more estimated analyte values of the set of estimatedvalues at the third time.
 10. The system of claim 9, wherein to updatethe untrained machine learning model, the second processing device is toupdate a set of matrices in the untrained machine learning model. 11.The system of claim 9, wherein between the first time and the secondtime, the user was undergoing a dialysis process.
 12. A method,comprising: receiving, by a processing device a first measurement of atarget analyte within a user at a first time; receiving a secondmeasurement of the analyte within the user at a second time; generatinga set of estimated values of the analyte at different times between thefirst time and the second time; and inputting an interval ofelectrocardiogram data received from an electrocardiogram sensor, into amachine learning training system, wherein the interval ofelectrocardiogram data was taken at a third time between the first timeand the second time; inputting an estimated value of the set ofestimated values at the third time into an untrained machine learningmodel; updating, by the processing device, the untrained machinelearning model based on comparing an output of the machine learningtraining system based on the interval of electrocardiogram data and theestimated value of the set of estimated values at the third time. 13.The method of claim 12, wherein updating the untrained machine learningmodel, the processing device is to update a set of variables in theuntrained machine learning model.
 14. The method of claim 12, whereinbetween the first time and the second time, the user was undergoing adialysis process.
 15. The method of claim 12, further comprising:receiving new electrocardiogram data from the electrocardiogram sensor;applying the machine learning model to the electrocardiogram data,wherein the machine learning model has been trained based on previouselectrocardiogram data associated with the user and a source of thefirst and second analyte measurement associated with the user; anddetermining an indication of a new level of the analyte based on theelectrocardiogram data.
 16. The method of claim 12, wherein theelectrocardiogram data comprises an electrocardiogram signal measuredover multiple heartbeats of the user.
 17. The method of claim 16,wherein applying the machine learning model comprises pre-processing theelectrocardiogram signal to generate an average heartbeat over themultiple heartbeats of the user.
 18. The method of claim 12, wherein theelectrocardiogram sensor comprises a 2 lead or 3 lead electrocardiogramsensor.
 19. A non-transitory computer-readable medium havinginstructions stored thereon that, when executed by a processing device,cause the processing device to: receive electrocardiogram data from theelectrocardiogram sensor; apply a machine learning model to theelectrocardiogram data, wherein the machine learning model has beentrained based on previous electrocardiogram data associated with theuser and a source of an analyte measurement associated with the user,wherein to train the machine learning model, a second processing deviceis to: receive a first measurement of the analyte within the user at afirst time; receive a second measurement of the analyte within the userat a second time; generate a set of estimated values of the analyte atdifferent times between the first time and the second time; and use oneor more of the set of estimated values to train the machine learningmodel; and determine an indication of a level of the analyte based onthe electrocardiogram data.
 20. The non-transitory computer-readablemedium of claim 19, wherein to use one or more of the set of estimatedvalues to train the machine learning model, the processing device is to:input an interval of electrocardiogram data received from theelectrocardiogram sensor into a machine learning training system,wherein the interval of electrocardiogram data was taken at a third timebetween the first time and the second time; input one or more estimatedvalues of the set of estimated values at the third time into anuntrained machine learning training system; and update the untrainedmachine learning model based on comparing an output of the machinelearning training system based on the interval of electrocardiogram dataand the one or more estimated values of the set of estimated values atthe third time.